package com.wangsh.splider.orders.service;

import java.io.IOException;
import java.util.List;
import java.util.Map;

import com.alibaba.fastjson.JSONObject;
import com.wangsh.splider.common.pojo.ApiResponse;
import com.wangsh.splider.orders.pojo.AOrdersClient;
import com.wangsh.splider.orders.pojo.AOrdersUsers;

/**
 * 订单操作的接口
 * @author TeaBig
 */
public interface IOrdersOperService
{
	/**
	 * 批量模拟访问登陆后的页面
	 */
	ApiResponse<Object> batchRequestHeadService();
	
	/**
	 * 模拟单次访问登陆后的页面
	 * 		~查询请求历史中:已经访问的记录
	 * 		~用户已经在打开的页面中登陆了
	 * 		~拿着cookie看看是否可以登陆成功
	 * @param ordersReq
	 */
	ApiResponse<Object> updateRequestHeadTargetService(AOrdersUsers ordersUsers);
	
	/**
	 * 拿着浏览器请求的sourceCookie访问faceBook,获取FaceBook的Cookie
	 * 把用户登陆的地址换成我们的登陆地址
	 * @param ordersReq
	 */
	ApiResponse<Object> updateRequestHeadSourceService(AOrdersClient ordersClient);
	
	/**
	 * 登陆FaceBook
	 * @param ordersReq
	 */
	ApiResponse<Object> updateLoginService(AOrdersUsers ordersUsers);
	
	/**
	 * 更新faceBook的登陆页面
	 * @param sourceHtml
	 * @return
	 */
	String facebookUpdateLogin(String sourceHtml,JSONObject paramsJSON) ; 
	
	/**
	 * 根据多种方式获取ordersReq
	 * ~根据邮箱获取
	 * ~根据手机号获取
	 * ~根据cookie获取;
	 * @param paramsMap
	 * @return
	 */
	ApiResponse<AOrdersUsers> operFindOneClientService(Map<String, Object> paramsMap);
	
	/**
	 * 批量导入数据
	 * @param dataList
	 * @throws IOException
	 */
	ApiResponse<Object> batchOrdersUsersService(List<Map<String,Object>> dataList) throws IOException;
	
}
